package com.solo.system.service;

import com.solo.common.core.base.service.BasicService;
import com.solo.system.api.entity.SysNotice;
import com.solo.system.model.notice.req.NoticeCreateReq;
import com.solo.system.model.notice.req.NoticeUpdateReq;

/**
 * 通知公告 Service
 * @author 十一
 * @since 2024-12-02 17:27
 * 人生若只如初见，何事秋风悲画扇
 **/
public interface SysNoticeService extends BasicService<SysNotice> {

    /**
     * 新增通知公告
     * @param req 请求对象
     * @return boolean
     */
    boolean create(NoticeCreateReq req);

    /**
     * 更新通知公告
     * @param req 请求对象
     * @return boolean
     */
    boolean update(NoticeUpdateReq req);

    /**
     * 发布通知公告
     * @param noticeId 通知id
     * @return boolean
     */
    boolean publish(Long noticeId);

    /**
     * 撤销通知公告
     * @param noticeId 通知id
     * @return boolean
     */
    boolean quash(Long noticeId);

}
